package com.foreknow.demo6;

/**
 * 用户注册
 * 1. 当程序开始执行的时候，提示用户输入 用户名和密码
 * 2. 输入信息之后，后台程序就会模拟用户注册的功能
 * 3. 用户注册的时候用户要求长度【6，14】之间，小于或者大于都会报异常
 */
public class UserInfo {
    String[] name = new String[2];
    String[] pass = new String[2];

    public void register(String username,String password) throws RegisterException {
        //获取用户名和密码的长度
        int name_length = username.length();
        int password_length = password.length();
        //判断是否满足条件
        if(username == null || password == null) {
            throw new RegisterException("输入的用户名和密码为空。");
        }

        //判断长度
        if(name_length < 6 || name_length > 14) {
            throw new RegisterException("用户的名的长度应该为6-14");
        }

        if(password_length < 8 || password_length > 16) {
            throw new RegisterException("用户密码的长度应该为8-16");
        }

        for(int i = 0;i<name.length;i++) {
            if(name[i] == null && pass[i] == null) {
                name[i] = username;
                pass[i] = password;
                System.out.println("注册成功......");
                return;
            }
        }
        throw new RegisterException("注册的用户已经是最大值，无法继续注册");
    }

    public static void main(String[] args) {
        UserInfo userInfo = new UserInfo();
        try {
            userInfo.register("fender","123456789");
            userInfo.register("gibson","123456789");

        } catch (RegisterException e) {
            e.printStackTrace();
        }
    }
}
